package com.retail.marketing.server.mapper;

import java.util.List;
import com.retail.marketing.common.domain.TCoupon;
import com.retail.marketing.common.domain.TCouponType;

/**
 * 优惠券管理Mapper接口
 *
 * @author retail
 * @date 2024-02-27
 */
public interface TCouponMapper
{
    /**
     * 查询优惠券管理
     *
     * @param couponId 优惠券管理主键
     * @return 优惠券管理
     */
    public TCoupon selectTCouponByCouponId(Integer couponId);

    /**
     * 查询优惠券管理列表
     *
     * @param tCoupon 优惠券管理
     * @return 优惠券管理集合
     */
    public List<TCoupon> selectTCouponList(TCoupon tCoupon);

    /**
     * 新增优惠券管理
     *
     * @param tCoupon 优惠券管理
     * @return 结果
     */
    public int insertTCoupon(TCoupon tCoupon);

    /**
     * 修改优惠券管理
     *
     * @param tCoupon 优惠券管理
     * @return 结果
     */
    public int updateTCoupon(TCoupon tCoupon);

    /**
     * 删除优惠券管理
     *
     * @param couponId 优惠券管理主键
     * @return 结果
     */
    public int deleteTCouponByCouponId(Integer couponId);

    /**
     * 批量删除优惠券管理
     *
     * @param couponIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTCouponByCouponIds(Integer[] couponIds);

    /**
     * 批量删除优惠券类型管理
     *
     * @param couponIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTCouponTypeByCouponTypeIds(Integer[] couponIds);

    /**
     * 批量新增优惠券类型管理
     *
     * @param tCouponTypeList 优惠券类型管理列表
     * @return 结果
     */
    public int batchTCouponType(List<TCouponType> tCouponTypeList);


    /**
     * 通过优惠券管理主键删除优惠券类型管理信息
     *
     * @param couponId 优惠券管理ID
     * @return 结果
     */
    public int deleteTCouponTypeByCouponTypeId(Integer couponId);
}
